<?php
/*
 * @author eBIZ Team <dev@jungo.com.cn>
 * @copyright  Copyright (c) , ShenZhen JunGO Technology Co., Ltd. All rights reserved.
 * @license  Commercial authorization, unauthorized use and modification are prohibited
 * @url www.jungo.com.cn
 */

namespace ckeeper\services;


use ckeeper\entity\ManagerEntity;

interface ManagerService
{

    /**
     * @param string $keyword
     * @return ManagerEntity[]
     */
    public function searchManager(string $keyword = '');


    /**
     * 创建一个新的管理员账户
     * @param ManagerEntity $managerEntity
     * @return ManagerEntity
     */
    public function createManager(ManagerEntity $managerEntity);


    /**
     * 更新管理员账户信息
     * @param int $id
     * @param array $updateData
     * @return mixed
     */
    public function updateManager(int $id,array $updateData);


    /**
     * 通过用户名获取管理员账户信息
     * @param string $username
     * @return ManagerEntity
     */
    public function getManagerByUsername(string $username);


    /**
     * 根据ID列表删除管理员(批量删除)
     * @param array $ids
     * @return mixed
     */
    public function deleteManagerByIds(array $ids);

}
